html,
body,
.bows {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: black;
}

.rainbow {
	width: 20em;
	height: 10em;
	overflow: hidden;
}

.bows {
	width: 100%;
	height: 200%;
	position: relative;
	transform: rotate(225deg);
}

.bows span {
	position: absolute;
	width: calc(100% - 2em * (var(--n) - 1));
	height: calc(100% - 2em * (var(--n) - 1));
	border: 1em solid var(--color);
	box-sizing: border-box;
	border-top-color: transparent;
	border-left-color: transparent;
	border-radius: 50%;
	animation: rotating 3s infinite;
	animation-delay: calc(0.05s * var(--n));
}

.bows span:nth-child(1) {
	--n: 1;
	--color: orangered;
}

.bows span:nth-child(2) {
	--n: 2;
	--color: orange;
}

.bows span:nth-child(3) {
  --n: 3;
  --color: yellow;
}

.bows span:nth-child(4) {
  --n: 4;
  --color: mediumspringgreen;
}

.bows span:nth-child(5) {
  --n: 5;
  --color: deepskyblue;
}

.bows span:nth-child(6) {
  --n: 6;
  --color: mediumpurple;
}

@keyframes rotating {
	0%, 20% {
		transform: rotate(0deg);
	}

	80%, 100% {
		transform: rotate(360deg);
	}
}
